import { request } from '@/utils/request'


/**
 * 获取选课详情
 * @param {Object} params - 查询参数对象
 * @param {number} [params.pageNum=1] - 当前页码
 * @param {number} [params.pageSize=10] - 每页条数
 * @param {string} [params.courseName] - 课程名称
 * @param {number} [params.roundId] - 轮次ID
 * @returns {Promise} - 返回选课详情的请求Promise
 */
export const getcourseDetails = (params) => {
  return request({
    url: '/api/courseDetails',
    method: 'get',
    params,
  })
}

/**
 * 创建选课
 * @param {Object} data - 选课数据对象
 * @param {number} [data.id] - 选课ID，整数类型
 * @param {number} data.roundId - 轮次ID，必填，整数类型
 * @param {number} data.courseId - 课程ID，必填，整数类型
 * @param {number} data.userId - 授课老师ID，必填，整数类型
 * @param {number} data.personMax - 最大选课人数，必填，整数类型
 * @param {string} [data.createTime] - 创建时间，日期时间格式
 * @param {string} [data.updateTime] - 修改时间，日期时间格式
 * @returns {Promise} - 返回创建选课的请求Promise
 */
export const createcourse = (data) => {
  return request({
    url: '/api/courseDetails/add',
    method: 'post',
    data,
  })
}


/**
 * 修改选课
 * @param {Object} data - 选课数据对象
 * @param {number} [data.id] - 选课ID，整数类型
 * @param {number} data.roundId - 轮次ID，必填，整数类型
 * @param {number} data.courseId - 课程ID，必填，整数类型
 * @param {number} data.userId - 授课老师ID，必填，整数类型
 * @param {number} data.personMax - 最大选课人数，必填，整数类型
 * @param {string} [data.createTime] - 创建时间，日期时间格式
 * @param {string} [data.updateTime] - 修改时间，日期时间格式
 * @returns {Promise} - 返回创建选课的请求Promise
 */
export const updatecourse = (data) => {
  return request({
    url: '/api/courseDetails',
    method: 'put',
    data,
  })
}

/**
 * 删除选课
 * @param {Object} data - 选课数据对象
 * @param {Array} [data.array] - 选课数据对象
 * @returns {Promise} - 返回创建选课的请求Promise
 */
export const deletecourse = (data) => {
  return request({
    url: '/api/courseDetails/del',
    method: 'delete',
    data,
  })
}
